Presence server in ip multimedia

ABSTRACT

A packet switched environment and packet switched network includes a functionality of a presence server in an application and services environment.

FIELD OF THE INVENTION

[0001] The present invention relates to the provision of a system architecture in an packet switched environment, and particularly to the implementation in such an architecture of means for providing information about a user's presence.

BACKGROUND TO THE INVENTION

[0002] In third generation (3G) mobile networks services are provided over IP networks, which results in the integration of voice and data applications. One of the major candidates for the emerging new IP based services is to provide information about the user's presence. Presence is defined as subscription to and notification of changes in the communications state of a user. This communications state consists of the set of: communications means; communications address; and status of that user.

[0003] In third generation networks, call control and the service creation environment are based on a session initiation protocol (SIP), as described in 3^(rd) Generation Partnership Project, Technical Specification Group Services and System Aspects, IP Multi-Media Sub-System—Stage 2, 3G TS 23.228 version 1.7.0. February 2001.

[0004] Internet Engineering Task Force, Internet Draft, draft-rosenberg-impp-presence-ol.txt, Rosenberg et al. published 2^(nd) March 2001, the contents of which are incorporated herein by reference as Annex A, proposes an extension to SIP for subscriptions and notifications of user presence. User presence is defined as the willingness and ability of a user to communicate with other users on the network. Historically, presence has been limited to “on-line” and “off-line” indicators. The notion of presence in Rosenberg et al is broader. Subscriptions and notifications of user presence are supported by defining an event package within the general SIP event notification framework. This protocol is also compliant with the common presence and instant messaging (CPIM) framework. However, such proposal does not include any consideration of multimedia environments.

[0005] The SIP extension defined in Rosenberg et al is based on the concept of a presence agent (PA), which is a new logical entity that is capable of accepting subscriptions (through a SUBSCRIBE message), storing a subscription state, and generating notifications (through a NOTIFY message) when there are changes in user presence.

[0006] The aim of this invention is to provide a technique for the session initiation protocol registration, subscription and notification procedures in an internet protocol multimedia subsystem.

SUMMARY OF THE INVENTION

[0007] The aim of the present invention is achieved by providing a presence server in the architecture. The presence server is preferably provided as part of the application and services ‘cloud’ or environment. By providing the presence server in the architecture, subscribers are able to receive information about other subscriber's presence.

[0008] The present invention is related to 3GPP (3^(rd) Generation Partnership Protects Release 5/6 standardization.

[0009] In accordance with the present invention there is provided a packet switched environment, including the functionality of a presence server in an application and services environment.

[0010] The packet switched environment is preferably an internet protocol multimedia environment, and preferably a subsystem of an all-IP telecommunications network.

[0011] In a first embodiment the interrogating call state control function (I-CSCF) updates the presence information in the presence server by forking an incoming REGISTER message.

[0012] In a second embodiment the serving call state control function (S-CSCF) acts as a presence agent and the presence server provides the task of storing information about the subscribers.

[0013] In a third embodiment the presence server in the internet protocol multimedia (IM) sub-system behaves as a presence agent and the serving call state control function (S-CSCF) uses a separate REGISTER transaction to update the presence information in the presence server.

[0014] The invention thus solves the problem of routing of the REGISTER, SUBSCRIBE and NOTIFY messages in an internet protocol multimedia (IM) subsystem.

BRIEF DESCRIPTION OF THE DRAWINGS

[0015] The invention will now be described by way of reference to the accompanying drawings, in which:

[0016]FIG. 1 represents the 3GPP Release 5 architecture embodying the present invention;

[0017]FIG. 2 represents the flow of REGISTER messages in a first embodiment of the present invention;

[0018]FIG. 3 represents the flow of SUBSCRIBE messages in a first embodiment of the present invention;

[0019]FIG. 4 represents the flow of NOTIFY messages in a first embodiment of the present invention;

[0020]FIG. 5 represents the flow of SUBSCRIBE messages in a second embodiment of the present invention;

[0021]FIG. 6 represents the flow of NOTIFY messages in a second embodiment of the present invention;

[0022]FIG. 7 represents the flow of REGISTER messages in a third embodiment of the present invention;

[0023]FIG. 8 represents the flow of SUBSCRIBE messages in a third embodiment of the present invention; and

[0024]FIG. 9 represents the flow of NOTIFY messages in a third embodiment of the present invention.

DESCRIPTION OF PREFERRED EMBODIMENTS

[0025] The present invention places a presence server in the internet multimedia subsystem of the 3GPP Release 5 architecture as part of the ‘application and services cloud’. The internet protocol multimedia subsystem refers to the set of Core Network entities using the services provided by the packet switched domain of the 3GPP Release 5 architecture to offer multimedia services. The entities of the internet protocol multimedia subsystem are the CSCF, the MGCF, the MRF and some adaptation entities. The representation of the extended architecture is shown in FIG. 1.

[0026]FIG. 1 is based on a basic 3GPP architecture in accordance with the architecture defined in 3^(rd) Generation Partnership Project; Technical Specification Group Services and Systems Aspects; Architecture for an All-IP Network; 3G TR 23.922 version 1.0.0; October 1999, the contents of which are herein incorporated by reference as Annex B. However, the architecture disclosed therein is modified, as shown in FIG. 1, to include a presence server in accordance with the present invention.

[0027] The present invention is particularly concerned with the flow of REGISTER, SUBSCRIBE and NOTIFY messages in a 3GPP network. The present invention will now be described in further detail with reference to three exemplary embodiments of REGISTER, SUBSCRIBE, and NOTIFY message flows. It should be noted that only the necessary parts of the network—and message flows—needed for operation of the present invention are described in the following examples.

[0028] One general requirement for all the described embodiments is that the user's profile information must contain the name of the presence server associated with that user.

[0029] The routing of the REGISTER/SUBSCRIBE/NOTIFY messages of a first embodiment is described hereinbelow with reference to FIGS. 2 to 4.

[0030] In this first embodiment, the interrogating call state control function (I-CSCF) updates the presence information in the presence server by forking an incoming REGISTER message.

[0031] A first network corresponds to the visited network of the presence user agent (PUA), and includes user equipment (UE) 200, and a proxy call state control function (P-CSCF) 202. The first network is also the presence agent's network.

[0032] A second network corresponds to the home network of the presence user agent (PUA), and includes an interrogating call state control function (I-CSCF) 204, a (HSS) 206, a serving call state control function (S-CSCF) 208, and a presence server (PS) 210.

[0033] A third network corresponds to the home network of the subscriber, and includes a UE subscriber 212, a first proxy call state control function (P-CSCF#1) 214, a first serving call state control function (S-CSCF#1) 216. an interrogating call state control function (I-CSCF) 218, a (HSS) 220, a second serving call-state control function (S-CSCF#2) 222, and a second proxy call state control function (P-CSCF#2) 224. Referring to FIG. 2, there is illustrated an extended registration message flow in accordance with this first embodiment of the present invention.

[0034] As represented by step 230, the routing of the REGISTER message, initiated by the user equipment 200, takes place between the UE 200, the first network P-CSCF 202 and the second network I-CSCF 204. The name of the presence server 210 is part of the subscriber's profile, and this is retrieved by the I-CSCF 204 from the HSS 206 in a step 232. In a step 234 the I-CSCF 204 selects a S-CSCF for the session initiation, which in this example is the S-CSCF 208.

[0035] As represented by messages 236 and 238, the I-CSCF 204 forks the incoming REGISTER message such that, in accordance with this embodiment, it is forwarded to both the S-CSCF 208 and the PS 210. Thereafter “200 OK” messages are transmitted back to the UE 200 along the reverse route.

[0036] Referring to FIG. 3, there is illustrated a routing of the SUBSCRIBE message flow in accordance with this first embodiment of the present invention.

[0037] As represented by messages 240, 242, and 244, the SUBSCRIBE message is routed to the I-CSCF 204 from the UE subscriber 212 via the P-CSCF#1 214 and S-CSCF#1 216.

[0038] As represented by message 246, the I-CSCF 204 routes the received SUBSCRIBE message directly to the PS 210. Thereafter “202 Accepted” messages are routed back to the UE subscriber along the reverse route.

[0039] Referring to FIG. 4, there is illustrated a routing of the NOTIFY message flow from the presence server 210 in accordance with this first embodiment of the present invention.

[0040] The PS 210. as represented by the message 248, forwards the NOTIFY message to the I-CSCF 218. Following a local query to the HSS 220 in step 249 the I-CSCF, as represented by messages 250. 252 and 254, forwards the NOTIFY message to the UE subscriber 226 via the S-CSCF#2 222 and the P-CSCF#2 224. Thus the PS 210 sends the NOTIFY message directly to the other networks I-CSCF 218. Once again, “200 OK” messages are routed back to the PS 210 along the reverse route.

[0041] In summary, the first embodiment sets the following new requirements to the network elements placed in the architecture:

[0042] 1. I-CSCF downloads (part of) the subscriber's profile from HSS in order to find the subscriber's presence server;

[0043] 2. I-CSCF forks the incoming REGISTER of PUA to the S-CSCF and to the presence server;

[0044] 3. I-CSCF routes the incoming SUBSCRIBE requests to the presence server directly; and

[0045] 4. The presence server sends the outgoing NOTIFYs directly to other network's I-CSCF.

[0046] The routing of the SUBSCRIBE/NOTIFY messages in accordance with a second embodiment of the invention is described hereinbelow with reference to FIGS. 5 and 6.

[0047] Since the S-CSCF stores the subscriber profile and the contact information provided in the REGISTER message, a trivial solution is for the S-CSCF to act as a presence agent. One possible problem with this solution is that the S-CSCF would have to store information about all the subscribers and generate NOTIFY messages to all of them.

[0048] Therefore, in the second described embodiment, the task of storing information about each subscribers is provided by the newly introduced presence server. For the S-CSCF it is enough to receive only the first SUBSCRIBE message for the presently, since it will generate the NOTIFY message for the one subscription, and this NOTIFY message will be forked to the subscribers by the proxy server, which has the information about the subscribers.

[0049] The registration flow in this solution corresponds to the normal registration as defined by 3G TS 23.228 version 1.7.0, February 2001, discussed hereinabove in the introduction.

[0050] The routing of the SUBSCRIBE/NOTIFY messages in accordance with the second embodiment of the present invention is described hereinbelow with reference to FIGS. 5 and 6. Elements of the first, second and third networks corresponding to elements shown in FIGS. 2 to 4 are referenced in FIGS. 5 and 6 using the same reference numerals.

[0051] In addition to the elements shown in FIGS. 2 to 4, for the purposes of describing the second embodiment the third network, corresponding to the home network of the subscriber, includes two user equipment subscribers UE subs#1 302 and UE subs#2 304. Furthermore, the second network, corresponding to the home network of the PUA, includes a second serving call state control function S-CSCF#2 306.

[0052] Referring to FIG. 5, there is illustrated a routing of the SUBSCRIBE message flow in accordance with this embodiment of the present invention.

[0053] A SUBSCRIBE message from the first user equipment subscriber 302 is forwarded to the P-CSCF#1 214, as illustrated by message 308 a. Such message is forwarded, in turn, to the S-CSCF#1 216 and the I-CSCF 204 as illustrated by messages 310 a and 312 a. Following a local query in step 313 a, the SUBSCRIBE message is forwarded to the PS 210, as represented by message 314 a. Subsequent thereto, the SUBSCRIBE message is forwarded from the PS 210 to the S-CSCF#2 306, as represented by message 316.

[0054] Responsive to the SUBSCRIBE message 316 from the presence server 210 corresponding to the first user equipment subscriber 302 of the third network, the S-CSCF#2 returns an acknowledgement message by way of an accept signal, as represented by arrow 318.

[0055] Similarly a SUBSCRIBE message from the second user equipment subscriber 304 is forwarded to the P-CSCF#1 214, as illustrated by message 308b. Such message is forwarded, in turn, to the S-CSCF#1 216 and the I-CSCF 204 as illustrated by messages 310 b and 312 b. Following a local query in step 313 b, the SUBSCRIBE message is forwarded to the PS 210, as represented by message 314 b.

[0056] It is not necessary for the presence server 210 to forward any subsequent SUBSCRIBE messages from user equipment of the third network, as the S-CSCF#2 306 has already provided a successful acknowledgement.

[0057] Acceptance signals for each user subscriber are returned to the respective subscribers along reverse paths, responsive to receipt of the message 318 and an appropriate SUBSCRIBE message 314.

[0058] Referring to FIG. 6, there is illustrated a routing of the NOTIFY message flow from the presence server 210 in accordance with this embodiment of the present invention.

[0059] As represented by message 320, a single NOTIFY message is forwarded from the S-CSCF#1 to the presence server 210.

[0060] The presence server, as represented by message 322 a then forwards a first NOTIFY message to the I-CSCF 218. Following a first local query 324 a, the first NOTFIY message is forwarded to the first user equipment subscriber 302 via, in turn, the S-CSCF#2 222 and the P-CSCF#2 224, as represented by messages 326 a, 328 a, and 330 a.

[0061] The presence server, as represented by message 322 b also forwards a second NOTIFY message to the I-CSCF 218. Following a second local query 324 b, the second NOTFIY message is forwarded to the first user equipment subscriber 302 via, in turn, the S-CSCF#2 222 and the P-CSCF#2 224, as represented by messages 326 b, 328 b and 330 b.

[0062] “200 OK” messages are returned to the presence server 210 via a reverse path, and a single “OK” message forwarded to the S-CSCF#1.

[0063] The routing of the REGISTER/SUBSCRIBE/NOTIFY messages in accordance with a third embodiment of the present invention is described hereinbelow with reference to FIGS. 7 to 9.

[0064] The solution described in this third embodiment can be summarised as: the presence server in the internet protocol multimedia subsystem behaves as a presence agent, and the S-CSCF uses a separate REGISTER transaction to update the presence information in the presence server.

[0065] The routing of the REGISTER/SUBSCRIBE/NOTIFY methods is described hereinafter with reference to FIGS. 7 to 9. Elements of the first, second and third networks corresponding to elements shown in FIGS. 2 to 6 are referenced in FIGS. 7 to 9 using the same reference numerals.

[0066] Referring to FIG. 7, there is illustrated an extended registration message flow in accordance with this third embodiment of the present invention.

[0067] As represented by step 230, the routing of the REGISTER message takes place between the UE 200, the first network P-CSCF 202 and the second network I-CSCF 204.

[0068] Thereafter, in a step 702, the I-CSCF 204 selects a S-CSCF 208 for the session initiation, which in this example is the S-CSCF 208.

[0069] As represented by message 704, the REGISTER message is then forwarded to the S-CSCF 208.

[0070] The name of the presence server 210 is part of the subscriber's profile, and this is retrieved by the I-CSCF 204 from the HSS 206 in a step 708.

[0071] Following successful initiation with the S-CSCF 208, a “200 OK” message is transmitted to the UE 200 along a reverse path.

[0072] Thereafter, as represented by message 710, the REGISTER message is forwarded to the presence server 210. The message 710 constitutes a separate REGISTER transaction with which the S-CSCF updates the presence information in the PS.

[0073] If the presence update fails at the presence server, the S-CSCF generates a notification to the UE 200 indicating the presence update failure event. For this notification a SIP NOTIFY message can be used, for example, containing an event header with a new presence failure reason code. This example is illustrated in FIG. 7 labelled as 711. The NOTIFY is then acknowledged by the UE 200 to the S-CSCF 208 using a “200 OK” message.

[0074] Referring to FIG. 8, there is illustrated a routing of the SUBSCRIBE message flow in accordance with this third embodiment of the present invention.

[0075] A SUBSCRIBE message from the user equipment subscriber 212 is forwarded to the P-CSCF#1 214, as illustrated by message 712. Such message is forwarded, in turn, to the S-CSCF#1 216 and the I-CSCF 204 as illustrated by messages 714 and 716.

[0076] Following a local query in step 718, the SUBSCRIBE message is forwarded to the S-CSCF#2 306, as represented by message 720. Subsequent thereto, the SUBSCRIBE message is forwarded from the S-CSCF#2 306 to the PS 210, as represented by message 720.

[0077] Thereafter a “202 Accepted” message is sent along the reverse path.

[0078] Referring to FIG. 9, there is illustrated a routing of the NOTIFY message flow from the presence server 210 in accordance with this third embodiment of the present invention.

[0079] As represented by message 722, a NOTIFY message is forwarded from the presence server 210 to the S-CSCF#1 306. The S-CSCF#1 306, as represented by message 724 then forwards the NOTIFY message to the I-CSCF 218. Following a local query in step 726, the NOTIFY message is forwarded to the user equipment subscriber 226 via, in turn, the S-CSCF#2 222 and the P-CSCF#2 224, as represented by messages 728, 730, and 732.

[0080] Thereafter a “200 OK” message is sent along a reverse path.

[0081] The new requirements for the network elements placed in the architecture due to the third embodiment cab be summarised as below:

[0082] 1. The S-CSCF updates the presence information in the PS with a separate REGISTER transaction.

[0083] 2. If the presence update fails at the PS, the S-CSCF generates a notification message (e.g. SIP NOTIFY using the Evenyt header with a new presence failure reason code) to the UE indicating the presence failure update event.

[0084] 3. The SUBSCRIBE generated by the subscriber has to be routed by the network as it would be a normal INVITE, only the S-CSCF of the PUA routes the SUBSCRIBE to the PS associated with the presently.

[0085] 4. The NOTIFY generated by the PS has to be routed by the network as it would be a normal INVITE.

[0086] Although the present invention has been described with reference to three exemplary embodiments, the present invention more generally presents ways of implementing the idea presented in Rosenberg et al with 3GPP proposed architecture. 

1. A packet switched environment, including a functionality of a presence server in an application and services environment.
 2. The Packet switched environment of claim 1 wherein the presence server receives a REGISTER message from an interrogating call state control function in the same network.
 3. The Packet switched environment of claim 2 wherein the serving call state control function of the presence server network further receives the REGISTER message.
 4. The Packet switched environment of claim 2 or claim 3 wherein the presence server receives SUBSCRIBE message from the interrogating call state control function in the same network.
 5. The Packet switched environment of claim 4 wherein the interrogating call state control function receives the SUBSCRIBE message from a serving call state control function in a subscribers home network.
 6. The Packet switched environment of claim 5 wherein the serving call state control function receives the SUBSCRIBE message from a proxy call state control function in a subscribers home network.
 7. The Packet switched environment of claim 6 wherein the proxy call state control function receives the SUBSCRIBE message from the subscriber.
 8. The Packet switched environment of any one of claims 2 to 7 wherein the presence server provides a NOTIFY message to the interrogating call state control function of the subscriber's network.
 9. The Packet switched environment of claim 8 wherein the interrogating call state control function provides the NOTIFY message to a proxy call state control function of the subscriber network.
 10. The Packet switched environment of claim 9 wherein the proxy call state control function provides the NOTIFY message to the subscriber.
 11. The Packet switched environment of claim 1 wherein the presence server receives a plurality of SUBSCRIBE signals from a respective plurality of subscribers in a subscriber network.
 12. The Packet switched environment of claim 11 wherein each subscriber provides a SUBSCRIBE message to a proxy call state control function of the subscriber network.
 13. The Packet switched environment of claim 12 wherein the proxy call state control function of the subscriber network forwards the respective SUBSCRIBE messages to a serving call state control function of the subscriber network.
 14. The Packet switched environment of claim 13 wherein the serving call state control function of the home network provides the respective SUBSCRIBE messages to an interrogating call state control function of the presence server network.
 15. The Packet switched environment of claim 14 wherein the interrogating call state control function provides the respective SUBSCRIBE messages to the presence server.
 16. The Packet switched environment of any one of claims 11 to 15 whrein the presence server provides a single SUBSCRIBE message to a serving call state control function of the presence server network.
 17. The Packet switched environment of claim 16 wherein the presence server receives s single NOTIFY message from the serving call state control function.
 18. The Packet switched environment of claim 17 wherein the presence server generates a NOTIFY message for each respective user subscriber.
 19. The Packet switched environment of claim 18 wherein the plurality of NOTIFY messages are received by the interrogating call state control function of the subscriber network.
 20. The Packet switched environment of claim 19 wherein the interrogating call state control function forwards the NOTIFY messages to a serving call state control function of the subscriber network.
 21. The Packet switched environment of claim 20 wherein the serving call state control function forwards the NOTIFY messages to a proxy call state control function of the subscriber network.
 22. The Packet switched environment of claim 21 wherein the proxy call state control function forwards the NOTIFY messages to the respective subscribers.
 23. The Packet switched environment of claim 2 wherein the presence server receives a REGISTER message from a serving call state control function in the presence server network network.
 24. The Packet switched environment of claim 23 wherein the serving call state control function receives the REGISTER message from an interrogating call state control function of the presence server network.
 25. The Packet switched environment of claim 24 wherein a subscriber provides a SUBSCRIBE message to a proxy call state control function of the subscriber network.
 26. The Packet switched environment of claim 25 wherein the proxy call state control function of the subscriber network forwards the SUBSCRIBE message to a serving call state control function of the subscriber network.
 27. The Packet switched environment of claim 13 wherein the serving call state control function of the subscriber network provides the SUBSCRIBE message to an interrogating call state control function of the presence server network.
 28. The Packet switched environment of claim 14 wherein the interrogating call state control function provides the respective SUBSCRIBE messages to a serving call state control function.
 29. The Packet switched environment of claim 28 wherein the serving call state control function provides the SUBSCRIBE message to presence server.
 30. The Packet switched environment of claim 29 wherein the presence server provides NOTIFY message to the serving call state control function.
 31. The Packet switched environment of claim 30 wherein the NOTIFY message is received by the interrogating call state control function of the subscriber network.
 32. The Packet switched environment of claim 31 wherein the interrogating call state control function forwards the NOTIFY message to a serving call state control function of the subscriber network.
 33. The Packet switched environment of claim 32 wherein the serving call state control function forwards the NOTIFY message to a proxy call state control function of the subscriber network.
 34. The Packet switched environment of claim 33 wherein the proxy call state control function forwards the NOTIFY messages to the subscriber.
 35. The packet switched environment of any preceding claim, wherein the environment is an internet protocol multimedia environment.
 36. The packet switched network of claim 35 wherein the internet protocol multimedia environment is a subsystem of an all-IP telecommunications network. 